package tool.dialog;

import java.awt.Dimension;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;

import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

/**rappresenta un pannello contenente sia un JLabel che un JTextField.
 * Il JLabel viene posizionato a sinistra mentre la TextField a destra 
 * 
 * @author koldar
 * @version 1.1
 */
public class JParameterPanel extends JPanel{

	private static final long serialVersionUID = -6035385921945420674L;

	/** La dimensione preferita per il TextField. */
	private static final Dimension TEXTFIELD_PREFERRED_SIZE = new Dimension(80,20);
	
	/**il label all'interno del pannello*/
	private JLabel label;
	/**il textfield all'interno del pannello*/
	private JTextField textfield;
	
	/**costruisce un nuovo pannello con al suo interno un JLabel e JTextFIeld vuoti
	 * 
	 */
	public JParameterPanel(){
		this(new JLabel(),new JTextField());
	}
	/**costurisce un nuovo pannello con i parametri passati
	 * 
	 * @param _label indica il label che deve essere inserito a sinistra nel pannello
	 * @param _textfield indica il textfield che deve essere inserito a destra nel pannello
	 */
	public JParameterPanel(JLabel _label,JTextField _textfield){
		super();
		this.label=_label;
		this.textfield=_textfield;
		this.textfield.setPreferredSize(JParameterPanel.TEXTFIELD_PREFERRED_SIZE);
		this.setLayout(new GridBagLayout());
		GridBagConstraints constraints = new GridBagConstraints();
		constraints.weightx = 6;
		this.add(label);
		constraints.weightx = 1;
		this.add(textfield);
	}
	/**
	 * @return the label
	 */
	public JLabel getLabel() {
		return label;
	}
	/**
	 * @param label the label to set
	 */
	public void setLabel(JLabel label) {
		this.label = label;
	}
	/**
	 * @return the textfield
	 */
	public JTextField getTextfield() {
		return textfield;
	}
	/**
	 * @param textfield the textfield to set
	 */
	public void setTextfield(JTextField textfield) {
		this.textfield = textfield;
	}
	
	
}
